Transport Controls for a Media Device

ABSTRACT

A method of scanning content comprises receiving an input signal indicating that content being displayed is to be scanned, sensing a duration of the received input signal, and scanning the content at a rate based at least in part on the sensed duration of the received input.

TECHNICAL FIELD

In general, this document describes manipulating a media processingdevice to control the presentation of content.

BACKGROUND

Media processing devices embedded with media applications capable ofplaying audio and visual content enhance user experience. The contentcan include music, video, photographs, and the like. Such mediaprocessing devices can be configured to play either a single type ofcontent. For example, certain DVD players can play back only videocontent stored on a DVD. Other devices can be configured to play aplurality of content including audio, video, images, and the like. Forexample, the iPod, manufactured by Apple Computers of Cupertino, Calif.,can play audio and video content.

The content played on media processing devices can be manipulated basedon user input. For example, in media processing devices capable ofplaying a plurality of content types, users can choose to play audiocontent, stop the audio content, and switch to video content. Whileplaying video content, users can manipulate the presentation state ofthe content. The presentation state can include play, stop, pause,forward, rewind, and the like. Often, media processing devices areconfigured to present users with an interface through which users canprovide input to manipulate the content. Users can interact with theinterface through devices including either wired and wireless remotecontrol devices.

SUMMARY

The present inventors recognized that the ability to control a mediaprocessing device to manipulate the state of content presented on adisplay device using as few interactions with a remote control device asnecessary is desirable to users.

In one aspect, a method of scanning content is described. The method caninclude receiving an input signal indicating that content being playedis to be scanned, sensing a duration of the received input signal, andscanning the content at a rate based at least in part on the sensedduration of the received input.

This and other aspects can include one or more of the followingfeatures. The scanning can include moving a playhead position in anaccelerated manner from a current location in the content to a differentlocation in the content. The content can include digital media content.The input can be received by pressing a button on a remote controldevice and the duration of the input can correspond to a duration forwhich a button on the remote control device is pressed. The content canbe played at a play frame rate and the play frame rate can be increasedto a first frame rate when the duration of the input exceeds a firstthreshold. The play frame rate can be increased to a second frame ratewhen the duration of the input exceeds a second threshold, wherein thesecond frame rate is greater than the first frame rate and the secondthreshold is greater than the second threshold. The method can furtherinclude sensing a cessation of input signal, wherein the rate isreturned to the play frame rate upon sensing the cessation. The inputsignal can be provided by clicking a button on the remote controldevice. The content can be divided into a plurality of segments, whereineach segment can include one or more frames, and a number of frames ineach segment can depend on a time length of the content. Each segmentcan be referenced by a frame in the segment. Upon sensing the clicking,a playhead corresponding to a location of a frame in a segment beingdisplayed can be moved to a first frame of a subsequent segment. Thecontent can be scanned either in a forward or a backward direction.

In another aspect, a system for scanning content is described. Thesystem can be configured to receive an input signal indicating thatcontent being played is to be scanned, sense a duration of the receivedinput signal, and scan the content at a rate based at least in part onthe sensed duration of the received input.

This and other aspects can include one or more of the followingfeatures. The system can be configured to scan the content can befurther configured to move a playhead position in an accelerated mannerfrom a current location in the content to a different location in thecontent. The content can include digital media content. The system canbe further configured to receive input by pressing a button on a remotecontrol device, the duration of the input corresponding to a durationfor which a button on the remote control device is pressed. The systemcan be further configured to play the content at a play frame rate, andincrease the play frame rate to a first frame rate when the duration ofthe input exceeds a first threshold. The system can be furtherconfigured to increase the play frame rate to a second frame rate whenthe duration of the input exceeds a second threshold, wherein the secondframe rate is greater than the first frame rate and the second thresholdis greater than the first threshold. The system can be furtherconfigured to sense a cessation of input signal, wherein the rate isreturned to the play frame rate upon sensing the cessation. The inputsignal can be provided by clicking a button on the remote controldevice. The system can be further configured to divide the content intoa plurality of segments, wherein each segment can include one or moreframes, and a number of frames in each segment can depend on a timelength of the content. Each segment can be referenced by a frame in thesegment. The system can be further configured to move a playheadcorresponding to a location of a frame in a segment being displayed to afirst frame of a subsequent segment, upon sensing the clicking. Thesystem can be further configured to scan the content in either a forwardor a backward direction.

In one example, the system and techniques described here can presentcontent on a display device, manipulate the state of the content on thedisplay device in response to user input, wherein the user input can bereceived from a wireless remote control device. The system andtechniques described here may present one or more of the followingadvantages. First, using a wireless remote control device allows usersto control the media processing device without being physically presentadjacent to the media processing device. Moreover, using the samewireless remote control device, users can perform multiple operations onthe content including play, stop, pause, forward, rewind, and the like.Further, during forward and rewind operations, users can alter the rateat which content is scanned using the remote control device to reachdesired viewing points faster. Still further, during pause operations,users can step through content to enhance the viewing experience.

The details of one or more implementations are set forth in theaccompanying drawings and the description below. Other features andadvantages will be apparent from the description and drawings, and fromthe claims.

DESCRIPTION OF DRAWINGS

FIG. 1 is an example of a media client.

FIG. 2 is an example of a media system including a media client.

FIG. 3 is an example of a remote control device.

FIG. 4A is an example of video content in a play state.

FIG. 4B is an example of video content in a forward state.

FIG. 4C is an example of video content in a forward state.

FIG. 4D is an example of video content in a forward state.

FIG. 5 is an example of video content in a pause state.

FIG. 6 is a flowchart of an example of a method of scanning content inresponse to an input signal.

Like reference symbols in the various drawings indicate like elements.

DETAILED DESCRIPTION

FIG. 1 presents a media client 100 that can be configured to present oneor more types of media through a presentation device, including audio,video, images, or any combination thereof. The media client 100 includesa processor 105 configured to control the operation of the media client100. For example, the processor 105 can control communications with oneor more media servers to receive media for playback. The media can bereceived through push and/or pull operations, including throughdownloading and streaming. The processor 105 also can be configured togenerate output signals for presentation, such as one or more streamsrepresenting media content or an interface for interacting with a user.

The media client 100 also includes a storage device 110 that can beconfigured to store information including media, configuration data, andoperating instructions. The storage device 110 can be any type ofnon-volatile storage, including a hard disk device or a solid-statedrive. For example, media received from an external media server can bestored on the storage device 110. The received media thus can be locallyaccessed and processed. Further, configuration information, such as theresolution of a coupled display device or information identifying anassociated media server, can be stored on the storage device 110.Additionally, the storage device 110 can include one or more sets ofoperating instructions that can be executed by the processor 105 tocontrol operation of the media client 100. In an implementation, thestorage device 110 further can be divided into a plurality ofpartitions, wherein each partition can be utilized to store one or moretypes of information. Additionally, each partition can have one or moreaccess control provisions.

A communication bus 115 couples the processor 105 to the othercomponents and interfaces included in the media client 100. Thecommunication bus 115 can be configured to permit unidirectional and/orbidirectional communication between the components and interfaces. Forexample, the processor 105 can retrieve information from and transmitinformation to the storage device 110 over the communication bus 115. Inan implementation, the communication bus 115 can be comprised of aplurality of busses, each of which couples at least one component orinterface of the media client 100 with another component or interface.

The media client 100 also includes a plurality of input and outputinterfaces for communicating with other devices, including media serversand presentation devices. A wired network interface 120 and a wirelessnetwork interface 125 each can be configured to permit the media client100 to transmit and receive information over a network, such as a localarea network (LAN) or the Internet. Additionally, an input interface 130can be configured to receive input from another device through a directconnection, such as a USB or an IEEE 1394 connection.

Further, an output interface 135 can be configured to couple the mediaclient 100 to one or more external devices, including a television, amonitor, an audio receiver, and one or more speakers. For example, theoutput interface 135 can include one or more of an optical audiointerface, an RCA connector interface, a component video interface, anda High-Definition Multimedia Interface (HDMI). The output interface 135also can be configured to provide one signal, such as an audio stream,to a first device and another signal, such as a video stream, to asecond device. Further, a non-volatile memory 140, such as a read-onlymemory (ROM) also can be included in the media client 100. Thenon-volatile memory 140 can be used to store configuration data,additional instructions, such as one or more operating instructions, andvalues, such as one or more flags and counters. In an implementation, arandom access memory (RAM) also can be included in the media client 100.

Additionally, the media client 100 can include a remote controlinterface 145 that can be configured to receive commands from one ormore remote control devices (not pictured). The remote control interface145 can receive the commands through wireless signals, such as infraredand radio frequency signals. The received commands can be utilized, suchas by the processor 105, to control media playback or to configure themedia client 100. In an implementation, the media client 100 can beconfigured to receive commands from a user through a touch screeninterface. The media client 100 also can be configured to receivecommands through one or more other input devices, including a keyboard,a keypad, a touch pad, a voice command system, and a mouse.

FIG. 2 presents a media system 200 that includes a media client 205. Themedia system 200 includes a host location 220, such as a home or office,in which the media client 205 is installed. The host location 220 alsocan include a local media server 215 and a presentation device, such asa monitor 210. The monitor 210 can be coupled to the media client 205through a media connector 225, such that video and/or audio informationoutput by the media client 205 can be presented through the monitor 210.Further, the media client 205 can be coupled to the local media server215 through a local connection 230, such as a wired network connection,a wireless network connection, or a direct connection. As such, themedia client 205 can receive media content from the local media server215. The local media server 215 can be any computing device, including apersonal computer, a server, a palm top computer, or a media devicecapable of storing and/or playing back media content.

Further, the media client 205 and the local media server 215 can includenetwork connections 235 and 240 respectively, which provide access to anetwork 245, such as the Internet. In an implementation, the mediaclient 205 can communicate with a remote media server 250 and/or a mediastore 255 over the network 245. For example, a connection can beestablished between the media client 205 and the remote media server250. The connection can be secure or unsecure. Thereafter, the mediaclient 205 can receive media content from the remote media server 250,such as by streaming or downloading.

Similarly, the media client 205 can be configured to receive mediacontent from a media store 255. For example, upon establishing aconnection, the media client 205 can request a list of available mediacontent from the media store 255. The list of available media contentcan include free content, such as trailers and pod casts, andfor-purchase content, such as movies, television programs, and music.Additionally, the media client 205 can be configured to communicate withthe media store 255 to validate media content, such as by verifyingdigital rights management information.

Media content can be transferred from any remote server, such as theremote media server 250 or the media store 255, via one or moretransmission protocols, including Hyper Text Transfer Protocol (HTTP).For example, the media client 100 can request media content from aremote media server 250. In response, the remote media server 250 cantransmit the requested media content to the media client 100 using HTTP.The media content can be transferred using a plurality of data packets,which are separately transmitted over the network 245. Further, byutilizing HTTP version 1.1, the media client 100 can transmit aplurality of requests for media content to the media server. Theplurality of requests can be transmitted simultaneously or close intime, such that a request for media content is not delayed until aresponse to a previous request is received. As a result, latency in thetransfer of requested media content can be reduced. Additionally, byutilizing HTTP version 1.1, one or more byte ranges can be identified torequest specific portions of media content.

FIG. 3 depicts an example of a remote control device 300. In someimplementations, users can interact, communicate, and manipulate themedia client 100 using a remote control device 300. The remote controldevice 300 is operatively coupled with the media client 100. Input fromthe remote control device 300 is transferred to the processor 105 in themedia client 100 through the remote control interface 145. The processor105 is configured to perform operations in response to the inputreceived. Some or all of the operations performed in response to theinput received can be viewed on the display device.

The remote control device 300 is lightweight, low powered, and highlyportable. The remote control device can be held and operated by usersusing one hand. The remote control device 300 includes a wirelesstransmission window 305, shown in the front view of the remote controldevice 300. The remote control device 300 can interact with the mediaclient 100 through wireless signals transmitted through the wirelesstransmission window 305. In some implementations, the wireless signalscan be infrared signals. In other implementations, the wireless signalscan be high frequency radio signals.

In some implementations, the remote control device 300 can includebuttons on its surface, as shown in the top view in FIG. 3. Users canmanipulate the state of the content displayed on the display device bymechanical input to the remote control device 300 includingpressing/clicking and/or holding one or more buttons on the remotecontrol device 300 in one or more combinations and/or sequences. Eachbutton on the remote control device 300 can be configured to perform atleast one operation in response to user input. In some implementations,buttons 310, 315, 320, 325, 330, and 330 can be configured to performoperations forward, volume increase, rewind, volume decrease, menudisplay, and play/pause, respectively. In other implementations, theremote control device 300 can be operated using touch-based operations,near-contact operations or combinations thereof. For example, the remotecontrol device 300 can be embedded with a proximity detection mechanismthat can sense the presence of an input device, for example, a user'sfinger, without requiring contact with the surface of the remote controldevice 300.

The media client 100 can be operatively coupled to a display device todisplay video content on the display device. The video content can bereceived from the media server and stored in the storage 110 of themedia client 100. Alternatively, the video content can be stored on themedia server and streamed from the media server to the media client 100for display on the display device. In some implementations, the mediaclient 100 can be configured to display the video content on the entiredisplay area available on the display device. In other implementations,the video content can occupy a portion of the area of the displaydevice. The remainder of the area of the display device may either beblank or display additional content. The additional content can includemetadata related to the video content and indications corresponding tomanipulations of the media client 100. In other implementations, thevideo content can occupy the entire area of the display device. Uponreceiving input, the media client 100 may present overlay content overthe video content for display. Upon cessation of input for apre-determined duration, the overlay content may be hidden from view.

In some implementations, a menu of media items available can bedisplayed on the display device by clicking the menu display button 335.The buttons 310, 315, 320, 325, and 330, can additionally be configuredto perform menu navigation operations. The video content can be chosenfrom the menu of media items. The video content can be categorized by amenu that can contain further classifications including movies,television, documentaries, and the like. A user can navigate theclassifications to arrive at desired video content, e.g., a movie. Auser can commence displaying the desired video content on the displaydevice by clicking the play/pause button 330.

FIGS. 4A-4D depict schematics of video content being displayed indifferent states. When the video content is played on the display device400, the video content can occupy the entire area of the display device,as depicted in FIG. 4A. In some implementations, an overlay content bar405 is displayed over the video content. The overlay content bar 405 caninclude a play indicator 410, a current location indicator 415, expiredcontent duration 420, and total content duration 430. In someimplementations, the expired content duration 420 and the total contentduration 430 can be displayed in minute:second (mm:ss) format. Theoverlay content bar 405 can be displayed over the video content once theuser presses the play/pause button 330 to begin video content display.In the absence of input for a pre-determined duration, the overlaycontent bar 405 can be hidden. Any interaction by the user with theremote control device 300 may cause the overlay content bar 405 to bereappear over the video content.

The video content can include a plurality of frames, each frameincluding an image, and the frames can be scanned at a rate to provide avideo viewing experience. The rate can be encoded in the video contentand accessed by the media client 100. A user may wish to view the videocontent starting from a frame that is not the first frame. In someimplementations, the duration of the video content can be divided into anumber of segments. Each segment can represent a fraction of the videocontent. For example, the duration of the video content can be dividedinto 20 segments and each segment can represent 1/20^(th) of the totalduration. Each segment can include a plurality of frames wherein asegment can be referenced by the first frame in the segment. In suchimplementations, when a segment is played, playing commences from thefirst frame of the segment.

The media client 100 can be configured such that when the forward button310 is clicked, a playhead corresponding a location of a frame in asegment being displayed is moved to a first frame of a subsequentsegment. The first frame of the subsequent segment can be accessed anddisplayed on the display device. Thus, when a user wishes to view thevideo content from a point that is not at the start of the videocontent, the user can press the forward button 310 to skip segments andarrive at or near the desired viewing location. Each click of theforward button 310 causes the video content to progress forward by onesegment. When a segment is displayed on the display device 400, theframe displayed in response to each click of the forward button 310 canbe the first frame that references the subsequent segment. When the userceases clicking the forward button 310, video content is played from thefirst frame related to that segment. In this manner, a user can alterthe viewing location of the video content viewed using the remotecontrol device 300.

A user may wish to proceed to a specific location in the video contentin an accelerated manner at a rate faster than the rate at which thevideo content is played. The rate at which the content is displayed maycorrespond to a play frame rate, which is a number of frames of thevideo content displayed on the display device each second. The framerate can be encoded in the video content and accessed by the mediaclient 100. In some implementations, the user can press and hold theforward button 310 to scan the video content at a faster rate. When theuser presses and holds the forward button 310, the media client 100 canincrease the frame rate from a play frame rate to a first frame rate.The increase in frame rate can cause the frames in the video content tobe skipped. For example, the play frame rate can be 30 frames persecond. When the forward button 310 is pressed and held, the frame ratecan be increased to a first frame rate that equals 45 frames per second.The first frame rate may cause the media client 100 to skip framescausing the images on the display device to appear discontinuous. Thefirst frame rate corresponds to a first forward speed, namely 1× speed.

In some implementations, when the video content is in a forward state,the overlay content bar 405 can be displayed over the video content, asdepicted in FIG. 4B. The play indicator 410 can be replaced with aforward indicator 435. In some implementations, the forward indicator435 can be displayed as a plurality of triangles placed adjacent to oneanother. The first triangle can be filled with a color to indicate thatthe video content is in a forward state and that the frame ratecorresponds to 1× speed. In some implementations, the media client 100can continuously update the expired content duration 425.

In some implementations, if the user continues to press and hold theforward button 310 for a duration that exceeds a first threshold, themedia client 100 can increase the frame rate to a second frame rate. Insuch cases, the second frame rate can correspond to a second speed,namely 2×. Two of the plurality of triangles in the forward indicator435 can be filled with a color to indicate that the video content is ina forward state and the frame rate corresponds to 2× speed (FIG. 4C). Insome implementations, the expired content duration 425 can becontinuously updated. In other implementations, the expired contentduration 425 can cease to be updated once the frame rate exceeds thefirst frame rate. Alternatively, the media client 100 can be configuredto cease to update the expired content duration 425 until forward button310 is released.

When the duration for which the forward button 310 is pressed and heldexceeds a second threshold, the media client 100 can increase the framerate to a third frame rate that corresponds to 3× speed. Three of theplurality of triangles in the forward indicator 435 can be filled with acolor to indicate that the video content is in a forward state and theframe rate corresponds to 3× speed (FIG. 4D). In some implementations,the number of triangles in the forward indicator 435 may correspond tothe frame rate. For example, when the frame rate corresponds to 2×speed, the forward indicator 435 may include 2 triangles. When the framerate corresponds to 3× speed, the forward indicator 435 may include 3triangles, and so on.

In some implementations, when the forward button 310 is released, theframe rate resumes to the play frame rate. In other implementations,when the forward button 310 is released, the video content is continuedto scan forward. The user can resume playing the video content bypressing the play/pause button 330.

In some implementations, the user may wish to pause the video content.The user can pause the video content by pressing the play/pause button330 when the video content is being played. When the play/pause button330 is pressed, the overlay content bar 405 is displayed over the videocontent (FIG. 5). The pause state is indicated by a pause indicator 440.The user can resume playing by pressing the pause/play button 330. Theuser can scan forward in the pause state by pressing the forward button310 after the pause state is entered. In some implementations, the videocontent can scan forward by a fixed number of frames for each click ofthe forward button 310. In other implementations, the video content cancontinue to scan forward subsequent to the first click without requiringadditional clicks. Subsequently, the video content can return to thepause state when either the forward button 310 or the play/pause button330 is pressed. Alternatively, the video content can return to a playstate when either the forward button 310 or the play/pause button 330 ispressed. In some implementations, the number of frames by which thevideo content progresses can be fixed. In other implementations, thenumber of frames by which the video content progresses can be a functionof the total duration of the video content.

FIG. 6 is an example of a flow chart of receiving an input signal andscanning content being played in response to the input signal. Scanningcan include moving a playhead position in an accelerated manner from acurrent location in the content to a different location in the content.In some implementations, the input signal indicating that content beingplayed is to be scanned is received at 600. The duration of the receivedinput signal is sensed at 605. The duration of the received input signalis compared against a first threshold at 607. If the duration of thereceived input signal is less than the first threshold, the input signalis treated as a click. The content is divided into a plurality ofsegments based on the total duration of the content. A playhead thatcorresponds to a location of a frame in a segment is moved from itscurrent location to the first frame of the subsequent segment at 610. Ifthe duration of the received input signal exceeds the first threshold,the play frame rate is increased to a first frame rate at 615. The firstframe rate is greater than the play frame rate. If the input signal isceased (620), the frame rate is returned to the play frame rate at 625.If the input signal is continued to be received, then the duration ofthe input signal is compared against a second threshold at 630. If theduration of the input signal exceeds the second threshold, the playframe rate is increased to a second frame rate at 640. The second framerate exceeds the first frame rate. The second threshold exceeds thefirst threshold. If the input signal is ceased (635), the frame rate isreturned to the play frame rate at 625. If the input signal is continuedto be received, accelerated scanning at the second frame rate iscontinued at 645.

A number of implementations have been described. Nevertheless, it willbe understood that various modifications may be made without departingfrom the spirit and scope of the disclosure. For example, the operationsby which forward scanning can be performed can be mirrored to scan thevideo content in reverse. While scanning in reverse, operationsperformed using the forward button 310 are performed using the rewindbutton 320. In this manner, the video content can be scanned in forwardand in reverse at different frame rates either from the play state orthe pause state.

In some implementations, the buttons on the remote control device 300can be arranged on a wheel that can be rotated by a user using a finger.The user can skip forward in the video content by rotating the wheel.The remote control device can be configured such that the wheel rotationoccurs in discrete steps. The remote control device can further beconfigured such that each step corresponds to an action on the state ofthe video content. In the play state, each step of rotation of the wheelon the remote control device may cause the video content to be scannedby a segment. A clockwise rotation may correspond to a forward scan anda counter-clockwise rotation may correspond to a reverse scan. In thepause state, each step of rotation of the wheel on the remote controldevice may cause the video content to scan either forward or in reverseby a pre-determined number of frames. Rotating the wheel may cause thecontent to scan forward at a frame rate greater than the play framerate. When a duration for which the wheel is rotated exceeds a firstthreshold, the frame rate may be increased from a first frame rate to asecond frame rate. Similarly, when a duration for which the wheel isrotated exceeds a second threshold, the frame rate may be increased froma second frame rate to a third frame rate.

In some implementations, the remote control device can be used to alterthe play state of audio content. When playing audio content, an overlaycontent bar may appear on the display device. The remainder of thedisplay device may be a blank screen. In some implementations, artrelated to the audio content being played may be displayed on thedisplay device. The overlay content bar may include metadata related tothe audio content. The content can include title of the audio content,total duration, expired duration, remaining duration, and the like. Whenthe state of the audio content is altered, the display of the overlaycontent bar may be altered to indicate the state of the audio content.Accordingly, other implementations are within the scope of the followingclaims.

1. A method of scanning content comprising: receiving an input signalindicating that content being played is to be scanned; sensing aduration of the received input signal; and scanning the content at arate based at least in part on the sensed duration of the receivedinput.
 2. The method of claim 1, wherein the scanning comprises moving aplayhead position in an accelerated manner from a current location inthe content to a different location in the content.
 3. The method ofclaim 1, wherein the content comprises digital media content.
 4. Themethod of claim 1, wherein the input is received by pressing a button ona remote control device and the duration of the input corresponds to aduration for which a button on the remote control device is pressed. 5.The method of claim 4, wherein the content is played at a play framerate and the play frame rate is increased to a first frame rate when theduration of the input exceeds a first threshold.
 6. The method of claim5, wherein the play frame rate is increased to a second frame rate whenthe duration of the input exceeds a second threshold, wherein the secondframe rate is greater than the first frame rate and the second thresholdis greater than the first threshold.
 7. The method of claim 6, furthercomprising sensing a cessation of input signal, wherein the rate isreturned to the play frame rate upon sensing the cessation.
 8. Themethod of claim 4, wherein the input signal is provided by clicking abutton on the remote control device.
 9. The method of claim 8, whereinthe content is divided into a plurality of segments, wherein eachsegment comprises one or more frames, and a number of frames in eachsegment depends on a time length of the content.
 10. The method of claim9, wherein each segment is referenced by a frame in the segment.
 11. Themethod of claim 9, wherein, upon sensing the clicking, a playheadcorresponding to a location of a frame in a segment being displayed ismoved to a first frame of a subsequent segment.
 12. The method of claim1, wherein the content is scanned in either forward or a backwarddirection.
 13. A system for scanning content configured to: receive aninput signal indicating that content being played is to be scanned;sense a duration of the received input signal; and scan the content at arate based at least in part on the sensed duration of the receivedinput.
 14. The system of claim 13, further configured to scan thecontent can further be configured to move a playhead position in anaccelerated manner from a current location in the content to a differentlocation in the content.
 15. The system of claim 13, wherein the contentcomprises digital media content.
 16. The system of claim 13, furtherconfigured to receive input by pressing a button on a remote controldevice, the duration of the input corresponding to a duration for whicha button on the remote control device is pressed.
 17. The system ofclaim 16, further configured to: play the content at a play frame rate;and increase the play frame rate to a first frame rate when the durationof the input exceeds a first threshold.
 18. The system of claim 17,further configured to increase the play frame rate to a second framerate when the duration of the input exceeds a second threshold, whereinthe second frame rate is greater than the first frame rate and thesecond threshold is greater than the first threshold.
 19. The system ofclaim 18, further configured to sense a cessation of input signal,wherein the rate is returned to the play frame rate upon sensing thecessation.
 20. The system of claim 16, wherein the input signal isprovided by clicking a button on the remote control device.
 21. Thesystem of claim 20, further configured to divide the content into aplurality of segments, wherein each segment comprises one or moreframes, and a number of frames in each segment depends on a time lengthof the content.
 22. The system of claim 21, wherein each segment isreferenced by a frame in the segment.
 23. The system of claim 21,further configured to move a playhead corresponding to a location of aframe in a segment being displayed to a first frame of a subsequentsegment, upon sensing the clicking.
 24. The system of claim 13, furtherconfigured to scan the content in either a forward or a backwarddirection.